home *** CD-ROM | disk | FTP | other *** search
/ Amiga Magazin: Amiga-CD 1997 November & December / Amiga-CD 1997 #11-12.iso / pd-disketten / ungepackt / 12_95 / apd-12-95-2 / tips&tricks / modula-pools < prev    next >
Text File  |  1996-01-25  |  1KB  |  49 lines

  1.  
  2. (*$EntryExitCode:= FALSE *)
  3. PROCEDURE AllocPooled(poolHeader{R.A0}: ADDRESS;
  4.               memSize{R.D0}: LONGCARD): ADDRESS;
  5. BEGIN
  6.    ASSEMBLE(MOVE.L A6, -(A7)
  7.             MOVE.L EL(A4), A6
  8.             JSR    -708(A6)
  9.             MOVE.L (A7)+, A6
  10.             RTS
  11.             END);
  12. END AllocPooled;
  13.  
  14. (*$EntryExitCode:= FALSE *)
  15. PROCEDURE FreePooled(poolHeader{R.A0}: ADDRESS;
  16. memory{R.A1}: ADDRESS; memSize{R.D0}: LONGCARD);
  17. BEGIN
  18.    ASSEMBLE(MOVE.L A6, -(A7)
  19.             MOVE.L EL(A4), A6
  20.             JSR    -714(A6)
  21.             MOVE.L (A7)+, A6
  22.             RTS
  23.             END);
  24. END FreePooled;
  25.  
  26. (*$EntryExitCode:= FALSE *)
  27. PROCEDURE DeletePool(poolHeader{R.A0}: ADDRESS);
  28. BEGIN
  29.    ASSEMBLE(MOVE.L A6, -(A7)
  30.             MOVE.L EL(A4), A6
  31.             JSR    -702(A6)
  32.             MOVE.L (A7)+, A6
  33.             RTS
  34.             END);
  35. END DeletePool;
  36.  
  37. (*$EntryExitCode:= FALSE *)
  38. PROCEDURE CreatePool(memFlags{R.D0}: ED.MemReqSet;
  39. puddleSize{R.D1}, treshSize{R.D2}: LONGCARD): ADDRESS;
  40. BEGIN
  41.    ASSEMBLE(MOVE.L A6, -(A7)
  42.             MOVE.L EL(A4), A6
  43.             JSR    -696(A6)
  44.             MOVE.L (A7)+, A6
  45.             RTS
  46.             END);
  47. END CreatePool;
  48.  
  49.